package com.itlong.cloud.operate.dao;

import com.itlong.cloud.POJO.PO.HomePageInfoPO;
import com.itlong.cloud.POJO.VO.operate.OperateAppHomePageGetPageVO;
import com.itlong.cloud.abstracts.IAbstractBaseDao;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * <desc>
 *      运营-App-启用页管理数据访问接口实现类
 * </desc>
 *
 * @createDate 2019/06/24
 */
@Mapper
@Repository
public interface IOperateAppHomePageDao extends IAbstractBaseDao<HomePageInfoPO>{
    /**
     * <desc>
     *      获取分页数据集
     * </desc>
     *
     * @param params 查询参数
     * @return  分页数据集
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    List<OperateAppHomePageGetPageVO> getPage(Map<String, Object> params);
    /**
     * <desc>
     *      获取分页总数量
     * </desc>
     *
     * @param params 查询参数
     * @return 总数量
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    Integer getPageCount(Map<String, Object> params);
    /**
     * <desc>
     *      保存功能
     * </desc>
     *
     * @param params 数据参数
     * @return sql执行行数
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    Integer save(Map<String, Object> params);
    /**
     * <desc>
     *      修改功能
     * </desc>
     *
     * @param params 数据参数
     * @return 执行行数
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    Integer update(Map<String, Object> params);

    /**
     * <desc>
     *      删除
     * </desc>
     *
     * @param homePageId 启动页编号
     * @return sql执行行数
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    Integer delete(@Param("homePageId") String homePageId);

    /**
     * <desc>
     *     按对象查询单个对象。
     * <desc/>
     *
     * @param homePageId 启动页编号
     * @return
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    OperateAppHomePageGetPageVO getOne(String homePageId);

    /**
     * <desc>
     *      获取启动页可用数据
     * </desc>
     *
     * @return page模型
     * @author Qiang.S
     * @createDate 2019/06/24
     */
    OperateAppHomePageGetPageVO StartAdvertising();
}
